Operating method for multiple windows and electronic device supporting the same

ABSTRACT

An electronic device including a touch-enabled display module configured to display a plurality of windows according to a multi-window mode; and a control module configured to displaying on the touch screen a first application window and a second application window according to the multi-window mode, alter the first application window in response to a touchscreen input received via the touch-enabled display, and automatically alter the second application window in response to the alteration of the first application window.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to Korean patent application No.10-2013-0124374, filed on Oct. 18, 2013, the disclosure of which ishereby incorporated by reference in its entirety.

TECHNICAL FIELD

The invention relates graphical user interfaces, and, more particularly,to the multiple-window operation of an electronic device.

BACKGROUND

Together with the recent development of digital technology, variouselectronic devices that are capable of communication and processingpersonal information, such as mobile communication terminals, personaldigital assistants (PDAs), electronic notes, smart phones, and tabletpersonal computers (PCs) have been released. Such electronic devices donot remain confined to their respective traditional functions but areconverging in that they include functions previously reserved for othertypes of terminals.

Typically, an electronic device may include call functions such as voicecalls and video calls, message transmission/reception functions such asshort message services (SMS) and e-mail services, electronic notefunctions, imaging functions, broadcast playback functions, movingpicture playback functions, music playback functions, internetfunctions, messenger functions, and social networking service (SNS)functions.

The electronic devices may provide screens corresponding to functions inthe form of windows. In addition, the electronic devices may displayrespective windows corresponding to a plurality of functions.

Typical electronic devices have been designed to display a plurality ofwindows on any predefined locations of a display unit. Thus, in anenvironment where a user uses a plurality of windows, a user may adjustthe size and location of each window to check information properly.

SUMMARY

Various embodiments of the invention are directed to providing anoperating method of a multiple window mode (or a multiple windowfunction), and an electronic device supporting the same that adaptivelycontrols the configuration of a plurality of windows to simplify userwindow manipulation.

According to one embodiment, an electronic device includes a displaymodule configured to display a plurality of windows, provided as aresult of performing functions, and a control module. If at least one ofa display format or a display type of at least one specific window of aplurality of windows is changed in response to the occurrence of anevent, the control module instructs the display module to change adisplay type of at least another of the plurality of windows, or displaya window having a new function. When the control module instructs thedisplay module to change the display type, a window is displayed thatexecutes another program having the same or similar function as theprevious window.

According to another embodiment, a method of operating a multi-windowmode includes changing a display type of a first function-related windowif a request for performing a second function is made while the firstfunction-related window is displayed. The window with a changed displaytype is displayed, along with a window provided as a result ofperforming the second function.

According to yet another embodiment, a method of operating multiplewindows includes displaying a plurality of windows provided as a resultof performing functions, changing at least one of a display format of afirst function-related window of the plurality of windows or a windowdisplay type according to executing another program having the same orsimilar function as the first function in response to the occurrence ofan event, and changing the display type of a second function-relatedwindow of the plurality of windows in response to execution of anotherprogram having the same or similar functions as the second function, inresponse to the change of the first function-related window, or inresponse to displaying a new third function-related window.

The descriptions above provide the characteristics of variousembodiments somewhat broadly so that a person skilled in the art mayunderstand the embodiments disclosed through the detailed description ofthe various embodiments. In addition to such characteristics, furthercharacteristics of various embodiments forming the subject of the claimswill be understood through the detailed description that follows below.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of an example electronic device of anembodiment;

FIG. 2 is a schematic diagram of an example control module of anembodiment;

FIG. 3 is a flowchart illustrating an example method of operatingmultiple windows of an electronic device according to an embodiment;

FIG. 4 illustrates an example screen interface related to another windowdisplay type change for a method of operating multiple windows accordingto an embodiment;

FIG. 5 illustrates an example screen interface related to another windowdisplay type change for a method of operating multiple windows accordingto an;

FIG. 6 illustrates an example screen interface related to another windowdisplay type change for a method of operating multiple windows accordingto an embodiment;

FIG. 7 is a flowchart illustrating an example method of operating themultiple windows of an electronic device according to an embodiment;

FIG. 8 illustrates an example screen interface related to the displaytype change of a designated window for a method of operating multiplewindows;

FIG. 9 illustrates an example screen interface related to a designatedwindow display type change for a method of operating multiple windowsaccording to an;

FIG. 10 is a flowchart illustrating an example method of operating themultiple windows of an electronic device according to an embodiment;

FIG. 11 illustrates an example screen interface related to a new windowdisplay for a method of operating multiple windows according to anembodiment; and

FIG. 12 illustrates various examples of a screen interface for operationof multiple windows that may be applied to various embodiments.

DETAILED DESCRIPTION

Various embodiments are described below in detail with reference to theaccompanying drawings. In this case, it should be noted that the samecomponents are represented by the same reference numerals in thedrawings, if possible. Also, known functions and components that mayobscure the subject matter are not described in detail. That is, itshould be noted that only descriptions relevant for understandingoperations according to various embodiments of the are provided below,and other descriptions are not provided in order not to obscure thesubject matter of the.

In the following descriptions, an electronic device may include devicesusing an application processor (AP), a graphic processing unit (GPU),and a central processing unit (CPU), such as all information andcommunication devices, multimedia devices and related applicationdevices that support functions described in various embodiments. Forexample, the electronic device may include mobile communicationterminals operating based on communication protocols corresponding tovarious communication systems, as well as devices such as tabletpersonal computers (tablet PCs), smart phones, digital cameras, portablemultimedia players (PMPs), media players, portable game consoles, andpersonal digital assistants (PDAs).

A “window,” as used in the following descriptions may refer to a certainarea within a graphical user interface on which information may bedisplayed after a function of the electronic device is performed. Suchinformation may include various screen elements associated with theperforming functions. For example, information may include at least oneor more visual elements including texts, still images, moving pictures,icons, virtual key buttons, slide bars, progression bars, list items, orthumbnail items. In some embodiments, the window may be displayed in theform of a new layer disposed on the background screen. Multiple windowsmay be configured by dividing the upper layer area of the backgroundscreen into multiple layer areas, and displaying a plurality of windowson the divided layer areas. Alternatively, multiple windows may also beconfigured by pulling up some areas of a single window, or scaling thesingle window to a certain size and correspondingly displaying anotherwindow while the single window is displayed.

According to another embodiment, a window may be formed by updating acertain area of the background screen in order to display newinformation. For example, an electronic device may configure a window byremoving information displayed on some areas of the background screenand displaying information on those areas after performing a specificfunction, or by overwriting information on some areas after performing afunction. Multiple windows may be configured by dividing the backgroundscreen into a plurality of areas, and displaying on the divided areasinformation after performing a plurality of functions, or overwritingthe information.

As described above, although the method of operating multiple windowsand the electronic device supporting the same indicate an area todisplay information after performing a specific function in anelectronic device as a window, the name of the area is not limited tothe term “window.” Thus, the term “window” should be understood toinclude various concepts related to an area for displaying informationafter performing a function, an information display layer, a pop-upwindow, a player, a screen, etc.

FIG. 1 is a schematic diagram of an example electronic device of anembodiment.

Referring to FIG. 1, an electronic device 100 may include acommunication module 110, an input module 120, an audio processingmodule 130, a display module 140, a storage module 150, and a controlmodule 160.

For the electronic device 100 having the configuration described above,if at least one of the display format or display type of a specificwindow in a multiple-window display environment is changed, it ispossible to automatically change at least one of the display format ordisplay type of another window. According to various embodiments, if apreset event occurs, the electronic device 100 may change the displaytype of a specific window designated by the event (for example,touchscreen input). Also, according to various embodiments, if at leastone of the display form or display type of a specific window is changed,the electronic device 100 may automatically display a new window havinga function associated with that window. In this case, the electronicdevice 100 may adjust the format and type of the new window in responseto the change of the specific window. Through the display control of thewindow as described above, the electronic device 100 provides support sothat a plurality of windows mutually and adaptively changes at least oneof a display format or a display type, thereby enabling more convenientviewing of information displayed in each window.

According to one example embodiment, the change of the display type, asdescribed above, may include a change of at least one: of a window size,a window shape, information arrangement in a window, or an informationdisplay size in a window. The display type corresponds to a window type,and may include, for example, an “app execution” type and a “widgetexecution” type, depending on the program being executed. The specificdisplay type is based on a number of factors including, for example, thedifference between template structures configuring windows for eachprogram type, the size of an area configuring a window, the arrangementof a plurality of areas, the number of areas and the types of virtualkey buttons included in at least one area, and the number of the virtualkey buttons may be defined to be different between programs performingfunctions.

The communication module 110 may include at least one communication unitassociated with the communication function of the electronic device 100.For example, the communication module 110 may include variouscommunication units, such as a mobile communication unit, a broadcastreceiving unit, and a local area communication unit. The electronicdevice 100 may display, on the display module 140, a call functionrelated window associated with the voice call function support of thecommunication module 110. According to various embodiments, theelectronic device 100 may display, on the display module 140, a webbrowser window associated with the web access function support of thecommunication module 110. According to various embodiments, theelectronic device 100 may display, on the display module 140, abroadcast screen window associated with the broadcast receiving functionof the communication module 110. According to various embodiments, theelectronic device 100 may display, on the display module 140, an imagescreen window after receiving the streaming data by the communicationmodule 110. According to various embodiments, the electronic device 100may display, on the display module 140, a screen window after forming alocal communication channel by the communication module 110.

The electronic device 100 may display, on the display module 140, aplurality of windows if the above-described multiple functions based onthe communication module 110 are performed. The electronic device 100may perform the size and location adjustment of windows corresponding toeach function if a plurality of windows is displayed based on thecommunication module 110. For example, while one window is displayed asthe entire screen, the electronic device 100 may adjust the displayformat or display type of a previous window if a request to display anew window is made. According to various embodiments, the electronicdevice 100 may adjust the display format or display type of a new windowaccording to the number, display forms or types of previous windows thatare being displayed.

The input module 120 may generate an input signal of the electronicdevice 100. The input module 120 may include at least one of a key pad,a dome switch, a (static pressure/capacitive) touch pad, a jog wheel, ora jog switch. The input module 120 may be implemented in a button formon the outside of the electronic device 100, and some buttons may beimplemented as a touch panel. According to an embodiment, the inputmodule 120 may include a plurality of keys for obtaining numeric or textinformation and setting various functions. Such keys may include a menucall key, a screen on/off key, a power on/off key, a volume control key,or a home key.

The input module 120 may generate an input signal requesting theactivation of at least one function, an input signal to adjust thedisplay type or display form of at least one window while multiplewindows are displayed on the display module 140, and an input signalrequesting the display of multiple windows on the display module 140.The input signal associated with requesting for displaying multiplewindows may be generated by selecting a specific menu item or icondesigned to simultaneously perform a plurality of functions.Alternatively, the input signal associated with requesting the displayof multiple windows may be an input signal to further perform a specificfunction while a specific window is displayed. The input module 120 maygenerate an input signal to associate an “app” (i.e., an application)having a specific function with either a widget, or another app havinganother function. Also, the input module 120 may generate an inputsignal to associate a widget having a specific function with anotherwidget or an app having another function.

The audio processing module 130 may process an audio signal of theelectronic device 100. For example, the audio processing module 130 maytransmit an audio signal input from the control module 160 to a speaker.The audio processing module 130 may perform the function of deliveringan audio signal such as voice input from a microphone to the controlmodule 160. The audio processing module 130 may convert an audio signalsuch as voice received from the microphone into a digital signal, anddeliver the digital signal to the control module 160. According to anembodiment, the audio processing module 130 may output audio dataassociated with a specific window in an environment where multiplewindows are displayed. Here, the audio processing module 130 may outputaudio data from a designated window among multiple windows. If thedesignated window is changed to designate another window, the audioprocessing module 130 may output audio data associated with the newlydesignated window.

According to various embodiments, if the display type or display form ofa specific window is changed in a multiple-window display environment,the audio processing module 130 may output a guide sound or provide asound effect in response to the change. Also, if a new window isdisplayed in a multiple-window display environment, the audio processingmodule 130 may also output audio data associated with a newly displayedwindow. Alternatively, the audio processing module 130 may also outputaudio data associated with a window of which the display form or displaytype is changed. The mechanism by which audio data is output on aplurality of windows being displayed on the display module 140 may beadjusted according to a variety of intentions or advantages, includingthe user's configuration preferences. Finally, outputting the audio datamay, in some embodiments, be skipped entirely.

The display module 140 displays at least one of various windowscorresponding to a function processed by the electronic device 100. Forexample, in a call mode (or call function), the electronic device 100displays a call related user interface (“UI”) or a call related graphicuser interface (“GUI”) in the form of a window. Also, when theelectronic device 100 is in a video call mode or in an imaging mode (orimaging function), the display module 140 displays an image and/orreceived image, the UI or the GUI in the form of a window. According toan embodiment, the display module 140 displays an app window for variousfunctions (or applications) that are executed on the electronic device100. In addition, the display module 140 activates a virtual inputdevice (for example, a virtual touch pad) according to the control ofthe control module 160 on the app window and delivers a signal inputthrough the virtual input device to the control module 160. Also, thedisplay module 140 may display a widget window after executing a widget.The widget window may be a screen element that is displayed on thedisplay module 140 in response to the execution of a widget programstored in the storage module 150. Also, the app window may be a screenelement that is displayed on the display module 140 in response to theexecution of an app program stored in the storage module 150.

According to an embodiment, the display module 140 may display aplurality of app windows in response to at least one function. The appwindow may be a screen element that corresponds to activating a programthat is provided in order to support a specific function. For example,the app window may be a call function-related window after performing acall function. The app window may be a memo function-related windowafter performing a memo function. The app window may be a video and/oranimation-related window after playing video or animation.

According to various embodiments, the display format or display type ofthe app window may vary in response to an input event. For example, theapp window may be a web browser window. If there is a request to play aspecific video on the web browser window, the display module 140 mayremove the web browser window and display an app window that is providedas a result of executing a video player. That is, the display module 140may display an app window corresponding to another app having the sameor similar function. The display module 140 may display app windows in atoggle manner. For example, a web browser-related first app window and avideo-related second app window may be alternately displayed on thedisplay module 140 according to the occurrence of an input event.According to an embodiment, if an event to remove a second app window inresponse to terminating video playback occurs, the display module 140may display the web browser-related first app window.

According to various embodiments, the display module 140 may display atleast one widget window. The display module 140 may display at least onewidget window according to an execution setup or the input event. Thedisplay module 140 may adjust the size of a widget window according tothe input event. According to various embodiments, the display module140 may display at least one app window and at least one widget window.For example, the display module 140 may display an app windowcorresponding to a memo function and a widget window corresponding to amusic play function. The display module 140 may adjust at least one ofthe size and arrangement of an app window or a widget window accordingto the control of the control module 160.

According to various embodiments, the display module 140 may displayanother window of which the display format or display type is adjusted,in response to a change in the display format or display type of awindow being displayed. For example, while an app window having a firstfunction and an app window having a second function are displayed, thedisplay format or display type of the app window having the secondfunction may be adjusted if the app window having the first function ischanged to a widget window having the first function. According to anembodiment, the display module 140 may expand the size of the app windowhaving the second function or arrange and display more information on anapp window. According to various embodiments, the display module 140 maychange and display the app window having the second function to a widgetwindow having the second function by instruction from the control module160.

In the descriptions above, the first function and the second functionmay be specific functions that are supported by the electronic device100. For example, the first function and the second function may bevarious functions such as a camera related-function, a memo function, adocument edit function, a search function, an image play function, achatting function, etc. Also, the app window and the widget window maytake forms having different window structures. According to anembodiment, a chatting app window and a chatting widget window may beimplemented by different program operations and the windows may havedifferent information arrangement structures. Alternatively, thechatting app window and the chatting widget window may be implemented byone program operation capable of supporting app and widget functions buthave information arrangement structures in which the forms of windowsdisplayed on the display module 140 are different.

If the display format or display type of a first function-related windowis changed in a multiple-window environment, the display module 140 maydisplay a new third function-related window via instruction from thecontrol module 160. The new third function-related window may be awindow that is provided as a result of the execution of the firstfunction related app or widget. Alternatively, the new thirdfunction-related window may be a window that is provided as a result ofthe execution of the second function-related app or widget. The thirdfunction may be designed to be associated with the first function or thesecond function, designated by a user's setup or defined by a userhistory.

According to various embodiments, the display module 140 may display aplurality of windows, for example, two windows so that they fill theentire screen. For example, the display module 140 may display aplurality of windows over the entire screen. In this case, the displaymodule 140 may divide the entire screen into areas and arrange aplurality of windows on the respective areas. Alternatively, the displaymodule 140 may arrange a plurality of windows on respective areas of theentire screen and display a portion of a background area or at least aportion of the background screen on some areas. If the windows arearranged on the areas formed through the division, and the displayformat or the display type of a specific window is changed, the displaymodule 140 may change and maintain the display format or display type ofanother window via instruction from the control module 160 so that theentire screen is utilized to display windows. Alternatively, the displaymodule 140 may display a window related to a new function on empty orremaining areas, according to the change in the display format ordisplay type. Accordingly, the display module 140 may have a full screenstate in which the entire screen is filled with windows related to aplurality of functions. Alternatively, the display module 140 may alsodisplay background areas or a partial background screen on the remainingareas. The control module 160 may adjust the sizes of windows so thatthe entire screen is filled with a plurality of windows, even if thesize of at least one of the windows is changed as described above. Thecontrol module 160 cause the display module 140 to display a backgroundarea or at least a portion of the background screen according to a sizechange of at least one of the windows.

According to various embodiments, the display module 140 may display aplurality of windows in a layered manner (in which layers correspondingto windows are stacked). For example, the display module 140 may displaya first function-related window on the entire screen, and may display asecond function-related window on the first function-related window, thesecond function-related window being smaller than the firstfunction-related window. In addition, the display module 140 may have afull screen state wherein a plurality of windows are arranged on theentire screen, even if an adjustment is received for the display formator display type of either the first function-related window or thesecond function-related window, wherein the size of the window ischanged.

The display module 140 may support a horizontal-mode screen display anda vertical-mode screen display according to the rotation direction (orarrangement direction) of the electronic device 100, and a screen switchdisplay according to the change between the horizontal mode and thevertical mode. If the change between the horizontal mode and thevertical mode occurs in a multiple-window environment, the displaymodule 140 may change the arrangement format or display type of thewindows, correspondingly. Also, if the display format or display type ofa specific window is changed in a multiple-window environment, thedisplay module 140 may change a mode of a window from the horizontalmode to the vertical mode, or from the vertical mode to the horizontalmode automatically.

The display module 140 may include at least one of a liquid crystaldisplay (LCD), a thin film transistor-LCD (TFT LCD), a light emittingdiode (LED), an Organic LED (OLED), an active matrix OLED (AMOLED), aflexible display, a bent display, or a 3D display. Some of thesedisplays may be implemented as transparent displays, or opticallytransferable (or transferable under visible light) to enable viewing ofthe outside.

Also, the display module 140 may be a touch screen, including a touchpanel configured to function as an input device, in addition to adisplay output device. The touch panel may be configured to convertchanges in pressure applied to a specific part of the display module140, or changes in capacitance generated from a specific part of thedisplay module 140, into an electrical input signal. The touch panel maybe configured to detect pressure when a touch is performed, and identifythe touched location and area. The display module 140 may include atouch panel and a display panel. The touch panel may be placed on thedisplay panel. The touch panel may be implemented as an “add-on” type,in which the touch panel is placed on the display panel, or an “in-cell”type or an “on-cell” type, in which the touch panel is integrated intothe display panel. The touch panel delivers to the control module 160 auser input responsive to a user gesture on the display module 140. Here,the user input may be generated by inputs from fingers or a touch unit,such as a touch pen. Input gestures may include, for example, a touch,multiple touches, a tap, double taps, a long tap, tap and touch, drag, aflick, a press, pinch in, and pinch out. The above-described user inputsmay be defined and used as input signals requesting the display ofmultiple windows, requesting a change in the display form or displaytype of a specific window while displaying multiple windows, requestingthe removal of the display of the specific window, etc.

The storage module 150 may store the app 151, the widget 153, or aprogram for processing or controlling the control module 160.

The app 151 may include program routines supporting various functionsthat the electronic device 100 supports. For example, the app 151 mayinclude various apps, such as a music play function supporting app, amoving-picture play function supporting app, a file edit function app, acamera function app, a chatting function app, a game function app, analarm app, a web browser app, a gallery app, a calculator app, a voicesearch app, a map app, a weather app, etc. The app 151 may be activatedin response to an execution request and display a corresponding screenon the display module 140 in the form of a window.

The widget 153 may include widget routines supporting various functionsthat the electronic device 100 supports. For example, the widget 153 mayinclude various widgets, such as a weather widget, an alarm widget, achatting widget, a message widget, a memo widget, a music play widget,etc. The widget 153 may be configured by using specific program routinesor may be configured by some routines of the app 151 above. A widget 153may be provided to display information differently from a standard appwindow. The information may, for example be arranged differently, ordisplayed in a different structure.

The app 151 and the widget 153 may be provided as menu items or providedas icons on a standby screen or a menu screen. Here, the icons may havea constant size or have various sizes according to preference or design.

The storage module 150 may store information on at least one of programrelated to a specific function. The program related to a specificfunction may be functions performed according to the change in thedisplay format or display type of at least one window in amultiple-window environment. The storage module 150 may store a list ofprograms related to specific functions. For example, the storage module150 may store a list of app programs, a list of widget programs, a listof popup programs that are related to a memo function. The controlmodule 160 may change a window related to a specific function to awindow provided as a result of executing another program having the sameor similar function based on a list of related programs. Alternatively,related program information may be included and stored in each program.For example, a memo app program may include information capable ofcalling a memo widget program as a related program.

The above-described storage module 150 may include, as a storage medium,at least one of memories including flash memory type, hard disk type,micro type and card type (for example, secure digital (SD) card orextreme digital (XD) card), and other types of memories including arandom access memory (RAM), a static RAM (SRAM), a read-only memory(ROM), a programmable ROM (PROM), an electrically erasable PROM(EEPROM), a magnetic RAM (MRAM), a magnetic disk or an optical disk typememory. The electronic device 100 may operate along with a web storagethat performs a storage function of the storage module 150 over theinternet.

The control module 160 may support displaying a menu screen or a standbyscreen related to at least one app 151 and at least one widget 153 thatare stored in the storage module 150. The control module 160 may displayat least one window in response to selecting at least one specificfunction on the standby screen or the menu screen. For example, thecontrol module 160 may display an app window in response to selectingthe app 151. The control module 160 may display a widget window inresponse to requesting to execute a specific widget 153. The controlmodule 160 may support a multiple-window environment, for example, anenvironment to display a plurality of app windows, an environment todisplay a plurality of widget windows, and an environment to display atleast one app window and at least one widget window.

According to an embodiment, when changing the display format or displaytype of a specific window in a multiple-window environment in responseto the occurrence of an input event, the control module 160 may performa change in the display format or display type of another window. Thecontrol module 160 may perform delivering execution information such as,for example, activity when performing a switch between windows havingdifferent display types. Here, the execution information may beinformation related to a function being executed in a specific app. Forexample, the execution information may include type and play time pointinformation on a specific music source, channel information on aspecific broadcast, etc. The execution information may includeinformation on texts or images made when executing a specific app,information on the executed page or executed part of a specific app,information on a web access of a specific app, etc. Even if a switchbetween windows having different display types occurs based on thedelivery of the execution information, the control module 160 maysupport the transition so that the current window being displayed afterthe switch maintains the same function as the previous window. Toillustrate, a transition between a music player app and music playerwidget may occur seamlessly so that the user does not experience anydisturbances in the playback of music. For example, the control module160 may perform delivering the execution information when performing aswitch between app windows, a switch between widget windows, a switchfrom an app window to a widget window, or a switch from a widget windowto an app window to enable the same function to be maintained.

According to various embodiments, the control module 160 may display awindow related to a new function when changing the display format ordisplay type of a specific window in a multiple-window displayenvironment. Such a control module 160 may include a configuration asshown in FIG. 2 for supporting the operation of multiple windows.

Although it is described in the example embodiments that the windowformats of an app and a widget for a specific function are different,various embodiments are not limited thereto. That is, examples of theapp and the widget are presented to show that a display type is changedas structural arrangement of information within or regarding a window ischanged. For example, in some situations, a single app may utilize appwindows with different display types supporting the same function,particularly when different developers manufacture the apps covering thesame functionality. Likewise, widgets covering the same function mayhave different display types, formats and visual structures supportingthe same function, depending on the developer's intention, designchoices and policy. The function of operating multiple windows may havean optimum display state because the display forms or display types ofmultiple windows are changed through association in response to an inputsignal.

On the other hand, various embodiments described may be implemented in arecording medium that may be read with a computer or a similar device byusing software, hardware or a combination thereof. According to ahardware implementation, the embodiments described in the may beimplemented by using at least one of application specific integratedcircuits (ASICs), digital signal processors (DSPs), digital signalprocessing devices (DSPDs), programmable logic devices (PLDs), fieldprogrammable gate arrays (FPGAs), processors, controllers,micro-controllers, microprocessors, or other electrical units forperforming functions. In some cases, the embodiments described in thespecification may be implanted as the control module 160 itself.According to a software implementation, embodiments such as theprocedures and functions described in the specification may beimplemented in separate software modules. Each of the software modulesmay perform one or more functions and operations that are described inthe specification.

FIG. 2 is a schematic diagram of an example control module of anembodiment.

Referring to FIG. 2, the control module 160 may include an eventcollecting module 161, a function processing module 163, and an outputprocessing module 165.

The event collecting module 161 may collect events that the electronicdevice 100 generates. For example, the event collecting module 161 maycollect input signals generated from the input module 120 as events. Theevent collecting module 161 may control the power supply of a touchpanel for supporting the input function of the display module 140. Theevent collecting module 161 may collect touch events generated from thedisplay module 140 having the input function. If the electronic device100 supports voice recognition and command functions, the eventcollecting module 161 may activate a microphone correspondingly andcollect voice recognition events. The event collecting module 161 maycollect sensor information corresponding to gestures as events, if theelectronic device 100 provides various sensors. For example, the eventcollecting module 161 may collect, as an event, at least one piece ofinformation generated from at least one sensor, such as accelerationsensing information, geomagnetic sensing information, contact orpressure sensing information, etc. The events collected by the eventcollecting module 161 may be provided to the function processing module163.

The function processing module 163 may be a module that processes eachfunction. The function processing module 163 may allocate a processingmodule related to a specific function according to an event that theevent collecting module 161 provides. For example, the functionprocessing module 163 may allocate a first function processing module 61if receiving an event requesting to execute a first function from theevent collecting module 161. Also, the function processing module 163may allocate a second function processing module 62 if receiving anevent requesting to execute a second function from the event collectingmodule 161 while the first function is executed. The function processingmodule 163 may deliver a specific event received from the eventcollecting module 161 to the first function processing module 61 or thesecond function processing module 62.

According to various embodiments, when the first function and the secondfunction are executed, the function processing module 163 may allocateanother processing module if it receives a request to execute anotherfunction. As described above, the operation of the function processingmodule 163 is not limited to the number of functions and a furtherfunction processing module 163 may be further allocated as needed.

According to various embodiments, the function processing module 163 mayautomatically allocate a processing module related to executing a thirdfunction in response to a change in a display format or a display type.The function processing module 163 may allocate a processing modulerelated to executing a predefined third function if, for example, achange in the display form or display type of a window related to thefirst function or the second function is requested.

The first function processing module 61 may perform data processingrelated to the first function for which an execution request is made.For example, the first function processing module 61 may supportprocessing for any one of the various functions supported by theelectronic device 100, such as a music play function, a broadcastreceiving function, a web access function, a file edit function, etc. Inthis case, the first function processing module 61 may control the playof a specific music file designated by a delivered event. The firstfunction processing module 61 may deliver, to the output processingmodule 165, various pieces of data related to supporting the firstfunction constituting, for example, first function related window dataand audio data. The first function related window data may includevarious pieces of data displayed on the display module 140 for the firstfunction while the first function is executed. According to anembodiment, the first function processing module 61 may activate a firstfunction related app and deliver app window data to the outputprocessing module 165 in response to activating the app.

According to various embodiments, the first function processing module61 may request the output processing module 165 to change the displayformat or display type of an app window in response to a deliveredevent. For example, the first function processing module 61 may deliverfirst function related widget window data, to the output processingmodule 165, in response to a delivered event. In this case, the firstfunction processing module 61 may request the output processing module165 to delete an app window previously displayed on the display module140.

According to an embodiment, while delivering first function relatedwidget window data or app window data to the output processing module165, the first function processing module 61 may deliver, to the outputprocessing module 165, data on another app window having a firstfunction in response to the occurrence of an event. Here, the firstfunction processing module 61 may request the output processing module165 to delete a previously displayed widget window from the displaymodule 140.

According to an embodiment, while delivering first function relatedwidget window data or app window data to the output processing module165, the first function processing module 61 may deliver to the outputprocessing module 165 data on another app window having a first functionin response to the occurrence of an event. The another app window havingthe first function may be a window of an app that supports the samefunction such as, for example, a music playback function that utilizes adifferent execution program, as to previously mentioned. In anotherexample, the music play function may be performed by using various apps,such as a web browser app, a music play app, a moving-picture app, etc.Apps may have different app window forms according to user's setup ordesign forms of corresponding programs. Also, the music playbackfunction may be performed by at least one of a plurality of musicplayback apps developed by different developers or companies. Here, themusic playback apps may have different window forms according to thedesigner's intent and design decisions, or the user's preferences orsetup configuration.

The second function processing module 62 may perform data processingrelated to a second function that is different from the first function.For example, the second function processing module 62 may supportprocessing a memo function. The second function processing module 62 maydeliver screen window data related to supporting the memo function tothe output processing module 165. In response to an event delivered bythe event collecting module 161, the second function processing module62 may request that the output processing module 165 adjust the windowdisplay format or display type of a corresponding function.

The output processing module 165 may display a specific window to thedisplay module 140 based on data delivered from at least one of thefirst function processing module 61 or the second function processingmodule 62. For example, the output processing module 165 may receive thefirst function-related window data from the first function processingmodule 61. The output processing module 165 may display the firstfunction-related window on the entire screen of the display module 140if a separate function-related window is not displayed on the displaymodule 140. Alternatively, the output processing module 165 may displaythe first function-related window with a user-defined size or a defaultsize. The output processing module 165 may perform the screen divisionor area division of the display module 140 and display windows on theareas formed through the division, if there is a request for displayinga plurality of windows such as, for example, a first function relatedwindow and a second function related window. In this case, the screendivision may be configured so as screen area is divided equally orunequally. Alternatively, the output processing module 165 may displaythe first function-related window on the entire screen and overlay thesecond function-related window on the first function-related window. Inthis case, the output processing module 165 may display the windows sothat the second function-related window covers a portion of the firstfunction-related window. Alternatively, the first function-relatedwindow and the second function-related window may be displayed to occupythe entire area of the display module 140.

According to an embodiment, the output processing module 165 may displaythe windows so that the first function-related window that is earlierdisplayed is larger or smaller than the second function-related windowthat is later displayed. According to various embodiments, the outputprocessing module 165 may display windows so that a window having afunction having relatively higher execution frequency or higher prioritythan other functions is larger or smaller than windows having otherfunctions in a multiple-window environment. According to variousembodiments, the output processing module 165 may control windows sothat windows related to simultaneous execution functions are displayedwith the same size.

In response to a request for changing the display format or display typeof a specific window in a multiple-window environment, the outputprocessing module 165 may perform a change in the display form ordisplay type of a corresponding window and may change the display formator display type of another window. According to an embodiment, thefunction processing module 163 may support performing a new thirdfunction in response to a change in the display type or display form ofa first function-related window or a second function-related window. Theoutput processing module 165 may receive third function-related windowdata from a processing module related to processing the new thirdfunction. The output processing module 165 may display the thirdfunction-related window on the display module 140 based on the receivedthird function-related window data. In this case, the output processingmodule 165 may display the third function related window on a certainarea that is provided in response to a change in the display form ordisplay type.

As described above, the electronic device 100 according to variousembodiments of the may include the display module 140 that displays aplurality of windows provided as a result of executing functions, andthe control module 160 that controls the display module so that if atleast one of the display form or display type of at least one of thewindows is changed in response to the occurrence of an event, at leastone of the display form or display type of at least another of thewindows is changed or a window having a new function is displayed. Here,the control module 160 may control the display module so that when thedisplay type is changed, a window provided as a result of executinganother program having the same or similar function as that of theprevious window is displayed.

The operation of multiple windows may be described according to theoperation of the control module of a specific electronic device. Thatis, while displaying a first function-related window on the displaymodule, the control module of the electronic device may control dataprocessing so that the display type of the first function-related windowis changed and a window performing a second function is simultaneouslydisplayed if there is a request for performing another function. Also,the operation of multiple windows may be described as the operation ofthe display module of the electronic device. That is, while displayingthe first function-related window, the display module may display thesecond function-related window in response to data processing anddisplay a changed window that is formed by changing the display type ofthe first function-related window, together with the secondfunction-related window.

Also, the above-described ‘output’ may be understood as displaying dataon the display module in addition to delivering data from the controlmodule to the display module. For example, the embodiments described mayalso be applied to when the control module and the display module areprovided on physically separate spaces. In this case, the control modulemay output a window change of multiple windows to an external displaydevice and a display device may display window-related data from theelectronic device. Such embodiments may be applied, for example, betweenan electronic device such as a smart watch and an electronic device suchas a smart pad or a smart phone. Thus, in addition to window adjustmentthrough data processing between the control module and the displaymodule that are arranged in one device, the operation of multiplewindows may be equally applied to window adjustment in an externalaccessory device that is remote from the control module and receivesdata from the control module by using at least one of wired or wirelessschemes.

According to various embodiments, the display module 140 may arrange aplurality of windows on the entire screen, there being divisions todisplay a full screen including the windows, or the display module 140may arrange the windows without any overlay, and then display at leastsome of the background area when displaying the arranged windows.

When an input is detected to change the size of a specific window, thecontrol module 160 may alter the size of a window and control therelative sizes of adjacent windows to adapt to the new screenconfiguration. If a size change of the specific window exceeds a certainlevel, the control module 160 may execute another program having thesame or similar function as a function in the specific window, and thendisplay a window for the other program in place of the specific window.This process may be repeated for the new window as well, wherein if thesize of the new window is altered to exceed a certain level, the controlmodule 160 may display another window having yet another new function.

According to various embodiments, the electronic device 100 may furtherinclude a storage module that stores associated information on anotherfunction associated with the another window-related function or thespecific window-related function.

According to various embodiments, the control module 160 may perform afunction pre-associated to the another window-related function or thespecific window-related function based on the associated information,and control the display module so that a window having a new functionprovided as a result of executing the function is displayed.

The control module 160 may change the size of a specific window to apreset size in response to the occurrence of an event, and control thedisplay module so that a window having a new function is displayedaccording to the sizes of empty areas generated in response to thechange.

According to various embodiments, the control module 160 may execute aprogram having a new function with a different display type based on theassociated information according to the sizes of the empty areas.

According to various embodiments, the control module 160 may adjust thesize of another window having the changed display type in response tothe occurrence of an event.

According to various embodiments, the control module 160 may againchange the display type of a specific window or another window havingthe changed display type in response to the occurrence of an event.

FIG. 3 is a flowchart illustrating an example method of operatingmultiple windows of an electronic device according to an embodiment.

Referring to FIG. 3, the control module 160 may first perform operationof a function, or wait for a function in operation 301. In this case,the control module 160 may display a standby screen or a predefined menuscreen on the display module 140. Alternatively, the control module 160may display, on the display module 140, a window corresponding tospecific function execution in response to a user input. Application ofa multiple window mode (or multiple window function) may be selectivelyperformed in response to the icon selection of a designated menu item oritems. If the operation of the multiple window mode is not applied, aspecific function related window that is requested to execute orselected may be displayed on the entire display module 140 in a fullscreen configuration. If the operation of the multiple window mode isapplied, the windows may be arranged on certain areas of the screen ofthe display module 140 such that the windows fill the entire displaymodule 140, the windows may be arranged so that at least some of thebackground areas or background screen is displayed. Certain informationmay be displayed on some background areas or background screen.

In operation 303, for example, the control module 160 may check whetherthere is a setup or an event for applying multiple window mode. Theelectronic device 100 may provide icons or menu items related toapplying the multiple window mode. Alternatively, the electronic device100 may be designed so that the multiple window mode is applied bydefault. For example, if a video playback function or a call function isperformed, the electronic device 100 may perform, by default,application of the multiple window mode. In operation 303, if there isno setup or event for applying the multiple window mode, the controlmodule 160 may proceed to operation 305 to support executing a specificfunction based on a single window display mode. In single window displaymode, the control module 160 may display any window related to afunction to be executed or a designated function on the entire screen ofthe display module 140. Accordingly, a window related to anotherfunction that is being executed or loaded may be entirely hidden by thewindow currently displayed on the entire surface of the display module140.

If there is an event or setup step for applying the multiple window modein operation 303, the control module 160 may check whether there is aneed to process a plurality of functions in operation 307. In thisoperation, the control module 160 may check whether there is a need toexecute a plurality of functions and display multiple windows. As longas a single function is being executed in operation 307, the controlmodule 160 may support a single window display as in operation 305, asthere is no need to display multiple windows.

If it is determined that a plurality of functions is being executed inoperation 307, the control module 160 may perform a multiple-windowdisplay of the functions in operation 309. For example, the controlmodule 160 may perform a first function-related window display for anexecuting first function and a second function-related window displayfor an executing second function. The control module 160 may display thefirst function-related window and the second function-related window sothat they are displayed on certain areas of the display module 140. Inthis operation, the control module 160 may collect preset window sizeinformation for the first function-related window display and presetsize information for the second function-related window display. Thecontrol module 160 may display the first function-related window and thesecond function-related window on the entire display module 140 at aratio defined by the collected preset size information.

According to other embodiments, the control module 160 may check sizeinformation on the first function-related window to be displayed in amultiple-window environment and display the window with a correspondingsize on the display module 140. The control module 160 may display thesecond function-related window in empty areas not utilized by the firstfunction-related window after the first function-related window isdisplayed.

According to other embodiments, while displaying the firstfunction-related window, the control module 160 may collect sizeinformation on the second function-related window to be applied in amultiple-window environment, if a request for displaying the secondfunction-related window is made. The control module 160 may display thesecond function-related window on the display module 140 according tothe size information on the second function-related window, and adjustthe size of the first function-related window to be suitable for emptyareas of the display module 140 not occupied by display of the secondfunction-related window.

According to other embodiments, if a request for displaying the secondfunction-related window is made while displaying the firstfunction-related window, the control module 160 may select the displaytype of the second function-related window according to the sizeinformation on the first function-related window to be applied in amultiple-window environment. For example, the control module 160 maydisplay an app window having a certain information arrangement for thesecond function, or display a widget window having a structure or aninformation arrangement that is different from the app window.

According to other embodiments, if a request for displaying the secondfunction-related window is made while displaying the firstfunction-related window, the control module 160 may change the displaytype of the first function-related window according to the sizeinformation on the second function-related window to be applied in amultiple-window environment. For example, the control module 160 maymaintain a first function-related window display or may display a firstfunction-related window having a structure or an information arrangementthat is different from the previously displayed window.

In operation 311, the control module 160 may check whether there is anevent related to adjusting a specific window. If there is no even thecontrol module 160 may return operation 303 and again perform theoperations related to adjusting the specific window. On the other hand,if there is an event, the control module 160 may perform updating aninformation display state in response to the event, and supportexecuting a function related to the specific window. For example, it ispossible to update information, input texts, or edit items according tolink selection on a window having a specific function.

In operation 313, the control module 160 may perform a switch to anotherwindow display type in response to the event related to adjusting thespecific window. According to one embodiment, while displaying the firstfunction-related window and the second function-related window, an eventfor adjusting the size of the first function-related window may occur.For example, a touch drag event may be detected, indicating a desiredsize adjustment of the first function-related window. In response, thecontrol module 160 may change the display type of the secondfunction-related window. According to one embodiment, the control module140 may change a second function-related app window designed to respondto app execution, to a second function-related widget window.Alternatively, the control module 160 may change the secondfunction-related widget window designed to respond to widget execution,to the second function-related app window.

As described above, the method of operating the multiple windowsaccording to various embodiments may include changing the display typeof the first function-related window and displaying the changed window,and a window provided as a result of executing the second function, if arequest for executing the second function is made while the firstfunction-related window is displayed.

Here, in addition to window adjustment in one device, the method ofoperating the multiple windows as described herein may be applied towindow adjustment in an external accessory device that is remote fromthe control module and receives data from the control module by using atleast one of a wired or wireless network schemes. For example, althoughthe change operation and the display operation, as described above, maybe performed in one electronic device, they may also be performed inseparate electronic devices, respectively. According to one embodiment,an electronic device such as a smart watch, a smart necklace or a smartbracelet may receive and output multiple-window-related data from anelectronic device such as a smart pad or a smart phone. In thisoperation, the electronic device such as the smart pad or the smartphone may process and output multiple-window-related data, and the smartwatch may display received multiple-window-related data.

According to various embodiments, the change operation may includechanging the display type of the first function-related window accordingto the size information on the second function-related window that is tobe applied in the multiple-window environment.

According to various embodiments, the display operation may include anyone of displaying the second window-related window according to the sizeinformation on the second function-related window to be applied in amultiple-window environment, and displaying a window formed by changingthe display type to one suitable for display in non-occupied empty areason the display after the second function-related window is displayed,and selecting the display type of the second function-related windowaccording to the size information of the first function-related window.

According to various embodiments, the display operation may includedisplaying the second function-related window as suitable for emptydisplay areas, after displaying a window formed by changing the displaytype.

FIG. 4 illustrates an example screen interface related to another windowdisplay type change for a method of operating multiple windows accordingto an embodiment.

Referring to FIG. 4, the electronic device 100 may display, on thedisplay module 140, a function-related window 410 in response to afunction execution request. According to one embodiment, the electronicdevice 100 may receive a request to perform a second function whiledisplaying, on the display module 140, the first function-related window410. The electronic device 100 may adjust the first function-relatedwindow 410 and display simultaneously a second function-related window420. For example, the electronic device 100 may display, on the displaymodule 140, a first function-related window 410 and a secondfunction-related window 420 as shown on a screen 401. The window 410 andthe window 420 may be displayed in according to specified sizeinformation specified to be applied to each window when displayed in amultiple-window mode.

Also, according to various embodiments, a specific-type window displayedon the entire screen of the display module 140 for a first function maybe changed to the window 410 having a different display type in responseto a request for performing a second function. For example, theelectronic device 100 may change a first function-related app window toa widget-type window together with displaying the window 420.

According to various embodiments, the window 420 may also be adaptivelychanged in display type according to the multiple-window environment.For example, even if widget execution for performing the second functionis requested, the electronic device 100 may display an app windowrelated to performing the second function as the window 420 tocorrespond to the window 410. Also, even if app execution for performingthe second function is requested, the electronic device 100 may displaya widget window related to performing the second function as the window420 to correspond to the window 410. The screen 401 illustrates when afirst function-related app window 410 and a second function-related appwindow 420 are displayed. As previously mentioned, such an environmentmay be changed according to the characteristics of the window 410 andthe window 420.

On the screen 401, an event related to adjusting the window 410 mayoccur. For example, the control module 160 may receive a touch event foradjusting the size of the window 410. The display module 140 may displaya size adjusting window 411 that is scaled as shown on a screen 403 inresponse to the size adjustment of the window 410. Also, the displaymodule 140 may display a size adjusting window 421 by adjusting the sizeof the window 420 in response to the display of the size adjustingwindow 411.

If the size of the size adjusting window 421 decreases or increases to apredefined certain size, the control module 160 may change the sizeadjusting window 421 to a changed window 422, as shown on a screen 405.According to various embodiments, the control module 160 may display thechanged window 422 as on a screen 405 if, for example, a predefined timepasses after the window 420 is changed to the size adjusting window 421.Alternatively, the control module 160 may change the window 420 to thechange window 422 if the size of the window 420 is altered to be smallerthan or equal to a predefined size. The changed window 422 may bedifferent from the window 420 in terms of at least one of an informationtype, an information arrangement, a window size, a window location, or awindow shape. The changed window 422 may be a window corresponding toprogram routine execution that is different from the window 420. Aprogram related to the window 420 may deliver the previously mentionedexecution information to a program related to executing the changedwindow 422. A program related to the changed window 422 may perform asecond function based on the delivered execution information and displaycorresponding information.

FIG. 5 illustrates an example screen interface related to another windowdisplay type change for a method of operating multiple windows accordingto an embodiment.

Referring to FIG. 5, a window 510 and a window 520 may be displayedaccording to a preset in a multiple-window environment as shown on ascreen 501. The display formats of the window 510 and the window 520 maybe adjusted according to the operation of multiple windows as describedwith respect to FIG. 4. In FIG. 5, for the purposes of illustration,window 510 and window 520 are displayed in app window formats, meaningthat each represents a currently executing app.

On the screen 501, an event is detected related to adjusting the size ofthe window 510, such as, for example, a drag event. The control module160 may adjust the size of the window 510 as the drag event occurs.Accordingly, the display module 140 may display a size adjusted window511 as shown on a screen 503. The control module 160 may change thewindow 520 to a changed window 521, as shown on the screen 503, if thewindow 520 reaches a size smaller than or equal to a certain size inresponse to the size adjustment of the window 510.

The control module 160 may receive an event related to adjusting thesize of the changed window 521. As shown on a screen 503, the displaymodule 140 may display a size changed window 522 that is scaled inresponse to an event related to the size adjustment of the changedwindow 521. The control module 160 may further adjust the size of thewindow 511 that is scaled in response to the size adjustment of thechanged window 521. Accordingly, the display module 140 may display asize adjusting window 512 as shown on a screen 505.

FIG. 6 illustrates an example screen interface related to another windowdisplay type change for a method of operating multiple windows accordingto an embodiment.

Referring to FIG. 6, a window 610 and a window 620 may be displayed onthe display module 140 according to a preset as shown in screen 601. Thedisplay formats of the window 610 and the window 620 may be adjusted interms of a display format or a display type according to the operationof multiple windows as described with respect to FIG. 4. In FIG. 6, thewindow 610 and the window 620 are, for the purposes of illustration,displayed as app window forms.

On the screen 601, the control module 160 may receive an event foradjusting the size of the window 610. For example, the control module160 may receive a touch drag event in which the edge area of the window610 is touched and then dragged in a certain direction. The displaymodule 160 may change the window 610 to a full window 611 as shown on ascreen 603 in response to the size of the touch drag event. For example,the control module 160 may control the display module 140 so that afirst function-related window entirely occupies the display module 140if the touch drag event occurs by a certain distance while expanding thesize of the window 610 in response to the travel distance of the touchdrag event. Accordingly, the display module 140 may change and displaythe window 610 to a full window 611.

The window 620 gradually decreases in size as the size of the window 610is expanded. In addition, if the window 610 is changed to the fullwindow 611, the window 620 may be changed to a pop-up window 621 asshown on a screen 603. The pop-up window 621 may be displayed on aspecified location of the screen, or on the edge area of a screen. Thepop-up window 621 may have a specified size.

As shown on the screen 603, the control module 160 may receive an eventrelated to the size adjustment of the full window 611. For example, atouch drag event related to the size decrease of the full window 611 mayoccur. The control module 160 may gradually decrease the size of thefull window 611 according to the touch drag event. The display module140 may display a size adjusted window 612 as shown in response to thesize decrease of the full window 611. Alternatively, if a sweep event orflick event having certain acceleration occurs, the control module 160may change the full window 611 to a specified size adjusted window 612in response to the occurrence of a corresponding event.

The control module 160 may change the pop-up window 621 to the sizeadjusted window 622 if the full window 611 is changed to the sizeadjusted window 612. The display module 140 may display the sizeadjusted window 622 on a certain location. For example, the displaymodule 140 may display the size adjusted window 622 on empty areas ofthe screen, after the full window 611 is changed to the size adjustedwindow 622. Furthermore, the size adjusted window 622 may be adjusted insize according to the touch drag event. For example, the size of thesize adjusted window 622 may be changed to the size of the window 620according to the occurrence of the event.

FIG. 7 is a flowchart illustrating an example method of operating themultiple windows of an electronic device according to an embodiment.

Referring to FIG. 7, operations 701 to 709 of the example method foroperating multiple windows may be the same or similar to operations 401to 409 described with respect to FIG. 4. For example, as in FIG. 4, thecontrol module 160 may operate or wait for a function in operation 701.In operation 703, it is determined whether there is an event or setuprelated to applying the multiple window mode. If the multiple windowmode is applied in operation 703, the control module 160 may checkwhether there is a need to process a plurality of functions in operation705. If there is no request to apply the multiple window mode inoperation 703, or there is no need to process a plurality of functionsin operation 705, the control module 160 may support a single windowdisplay in operation 707. If a plurality of functions is being executedin operation 705, the control module 160 may perform a multiple-windowdisplay mode in operation 709. The example operations of the electronicdevice 100 described with respect to FIG. 4 may also be applied to thepresent embodiment.

In operation 711, the electronic device 100 may determine whether apreset event is received. For example, the electronic device 100 maylisten for receival of the preset input signal from a pre-specifiedevent, depression of a key button, a gesture input, an audio input, or amessage. The specific gesture input signal may also include varioustouch inputs, such as a sweep event, a flick event, a drag event, or atouch gesture event corresponding to a specific pattern. The specificgesture input signal may be an input signal that is obtained byanalyzing sensor information collected from at least one sensor that iscoupled to the electronic device 100. For example, the specific gestureinput signal may be a sensor signal indicating tilting of the electronicdevice 100 in a certain direction, shaking the electronic device 100, ortapping the electronic device 100. Alternatively, the specific gestureinput signal may also include a combination of a touch gesture signaland a sensor based gesture signal. As an example, the specific gestureinput signal may include a touch signal and sensor input signal, therebya combined signal of tilting or shaking the electronic device 100 whiletouching a specific window area.

If a preset event is not received in operation 711, the electronicdevice 100 may proceed to operation 713 and perform a function accordingto the characteristic of an occurred event. For example, the controlmodule 160 may perform an information update on at least one of thecurrently displayed multiple windows in response to the occurred event.

If the preset event is received in operation 711, the control module 160may perform a window display type change according to a specific eventin operation 715. According to an embodiment, if a specific event occurson a window designated by a touch event, the electronic device 160 maychange the display type of the window designated in response. Forexample, the control module 160 may change an app window to a widgetwindow in response to the occurrence of the touch event. Alternatively,the control module 160 may change a widget window to an app window.

In operation 717, the control module 160 may check whether a windowaltered by the display type change operation is changed in size. If thechanged window has been altered in size, the control module 160 maychange the display format or display type of another windowcorrespondingly in operation 719.

FIG. 8 illustrates an example screen interface related to the displaytype change of a designated window for a method of operating multiplewindows according to an embodiment.

Referring to FIG. 8, if a request to perform a first function and asecond function is made, the control module 160 may perform the firstfunction and the second function. The display module 140 may display awindow 810 for the first function and a window 820 for the secondfunction. According to various embodiments, the display module 140 maydisplay a first function-related window 810 according to the request toperform the first function, and then display the second function-relatedwindow 820 according to a request for performing the second function.FIG. 8 illustrates the display in certain locations of the screen of anapp window 810 provided as a result of executing a firstfunction-related app, and an app window 820 provided as a result ofexecuting a second function-related app.

Referring to a screen 801, the display module 140 displays the window810 and the window 820 so that they occupy the entire screen. Thecontrol module 160 configures the window 810 and the window 820 at acertain ratio, for example, at a ratio of 1 to 1, according to specifiedinformation. Such a ratio may vary as the specified information changes.On the other hand, as shown on the screen 801, a preset event may occuron the window 820. The control module 160 may operate a touch panel inorder to support an input function and to detect receival of a presetevent. If, for example, a drag event or a sweep event having a certaindirection occurs, the control module 160 may check specified informationand perceive the event as a preset event. The control module 160 maychange the window 820 to a widget window 821, as shown on a screen 803,if the preset event occurs. When displaying the widget window 821, theelectronic device 100 may have information to execute a second functionrelated widget in response to the occurrence of a preset event in amultiple-window environment.

The display module 140 may substitute and display the widget window 821for the window 820 in response to executing the second function-relatedwidget. Here, the widget window 821 may have specified certain sizeinformation. According to an embodiment, the size of the widget window821 may have a size smaller than the previously displayed window 820.The display module 140 may substitute and display the widget window 821for the window 820, the widget window 821 being smaller than the window820. The control module 160 may perform size adjustment on the window810 in response to displaying the widget window 821. The display module140 may display the window 821 that is formed after adjusting the sizeof the window 810.

On the other hand, if a preset event occurs on the widget window 821 ofthe screen 803, the control module 160 may control the display module toremove the widget window 821 and display the window 820. In this case,the control module 160 may perform the size adjustment of a sizeadjusted window 811. The display module 140 may return to a state todisplay the window 810 and the window 820 as shown on the screen 801.

FIG. 9 illustrates an example screen interface related to a designatedwindow display type change for a method of operating multiple windowsaccording to an embodiment.

Referring to FIG. 9, if a request to perform a first function and asecond function is made, the control module 160 may perform the firstfunction and the second function. The display module 140 may display afirst function related window 910 and a second function related window920, as shown on a screen 901. According to various embodiments, thedisplay module 140 may display a first-size window 910 related to thefirst function, and a window 920 having a second size different from thefirst size. Accordingly, FIG. 9 illustrates when the window 910 occupiesa relatively wider area than the window 920.

Referring to the screen 901, the display module 140 may display thefirst-size window 910 on its upper part and the window 920 having thesecond size smaller than the first size on its lower part.Alternatively, after a first function-related window and a secondfunction-related window that have the same size are displayed, thedisplay module 140 may display the windows so that the size of the firstfunction related window is larger than that of the second functionrelated window in response to an input signal.

A preset event may occur on an area of the display module 140 on whichthe window 920 is displayed. The control module 160 may receive a presetevent such as, for example, a touch event that corresponds to theoperation of dragging or sweeping the window 920 in a certain direction.The control module 160 may switch the window 920 to a changed window 921as shown on a screen 920 if the preset event occurs. The display module140 may remove the window 920 as shown on the screen 901 or display thechanged window 921 on the upper layer of the window 920. In this case,the changed window 921 may have the same size as the window 920. Inresponse to the switch between the change window 921 and the window 920that have the same size, the window 910 may maintain the previous statewithout a separate size switch.

On a screen 903, a preset event may occur on the display module 140 onwhich the changed window 921 is displayed. The control module 160 mayswitch the changed window 921 to the window 920 in response to theoccurrence of the preset event. Accordingly, the display module 140 mayremove the changed window 921 as shown on a screen 905 or display thewindow 920 on the upper layer of the changed window 921. That is, thewindow 920 may be switched to the changed window 921 in response to theoccurrence of the preset event and, furthermore, the changed window 921may be switched to the window 920 in response to the occurrence of thepreset event.

FIG. 10 is a flowchart illustrating an example method of operating themultiple windows of an electronic device according to an embodiment.

Referring to FIG. 10, in an example method of operating multiplewindows, the control module 160 may first perform operating or waitingfor a function in operation 1001. For example, the control module 160may perform a specific function according to schedule information or inresponse to an input event, and display a corresponding screen. Inoperation 1003, the control module 160 may check whether to execute amultiple window mode (or multiple window function). For example, thecontrol module 160 may check whether there is a multiple-window mode oran input event to request to activate the multiple-window mode. If thereis no request to execute the multiple window mode in operation 1003, thecontrol module 160 may support applying a single window mode inoperation 1005.

If there is a request for executing the multiple window mode inoperation 1003, the control module 160 may arrange a plurality ofwindows in a certain format. In operation 1007, the control module 160may check whether a preset event is received. Here, the preset event maybe at least one of various events or gesture input signals that aredescribed in operation 711 of FIG. 7. If the preset event is notreceived in operation 1007, the control module 160 may proceed tooperation 1009 to control performing a function that is dependent on thetype or characteristic of a corresponding event. For example, thecontrol module 160 may perform volume control or a page switch for afunction or program that is already being executed.

If the preset event is received in operation 1007, the control module160 may adjust the window display format or display type according tothe preset event in operation 1011. For example, the control module 160may perform size adjustment on a specific window in response to anevent. Alternatively, the control module 160 may switch the display typeof the specific window to another display type in response to an event.

In operation 1013, the control module 160 may check whether there is anadjusted window-related function. The electronic device 100 mayassociate at least one specific function with another function.According to various embodiments, the electronic device 100 mayassociate a memo function with a video playback function or a musicplayback function. The electronic device 100 may associate a file editfunction with a chatting function. The electronic device 100 mayassociate a web access function with the memo function. The electronicdevice 100 may associate the web access function with a dictionaryfunction. The electronic device 100 may associate a call function withthe memo function. The electronic device 100 may associate a schedulerfunction with the memo function. The electronic device 100 may associatethe call function with a language conversion function. The electronicdevice 100 may associate a camera function with the memo function or agallery function. The electronic device 100 may store associatedinformation in the storage module 150. If the size of a specific windowis adjusted or the display type thereof is changed, the control module160 may check a function associated with a corresponding function basedon the associated information stored in the storage module 150. If thereis no adjusted window-related function in operation 1013, the controlmodule 160 may adjust the display format or display type of a windowdependent on the sizes of empty unused areas of the display in operation1017. Alternatively, the control module 160 may maintain empty areas,leaving them empty, filled with specific colors, or displaying thebackground screen.

If there is a program related to a specific function in operation 1013,the control module 160 may display a window having a new functionaccording to the sizes of empty areas. For example, the control module160 may determine a function associated with an adjusted window as aspecific display type and display a window corresponding to that displaytype. According to an embodiment, the control module 160 may display anapp window or a widget window corresponding to a new function accordingto the adjusted size or adjusted display type of the adjusted window. Inthis case, the control module 160 may adjust the size of an app windowor a widget window according to the size of the adjusted window.Alternatively, the control module 160 may further adjust the size of theadjusted window for displaying an app window or a widget window thathave a certain size.

As described above, the method of operating the multiple windowsaccording to various embodiments may include displaying a plurality ofwindows provided as a result of performing functions, changing at leastone of the display format of a first function-related window of theplurality of windows, or a window display type according to execution ofanother program having the same or similar functionality as the firstfunction in response to the occurrence of an event, and displaying asecond function-related window of the plurality of windows in responseto the change of the first function-related window, by changing a windowdisplay type according to executing another program having the same orsimilar functionality as the second function, or a new third functionrelated window.

According to various embodiments, the display operation may includechanging the display type of the second function-related window if asize change is equal to or larger than a certain level in regard to thedisplay format of the first function-related window.

According to various embodiments, the display operation may includedisplaying the third function-related window if the size change of thefirst function-related window or the size change of the secondfunction-related window is equal to or larger than a certain level.

According to various embodiments, the method may further includeperforming the third function previously associated with the firstfunction or the second function based on associated information, and mayinclude displaying the third function-related window provided as aresult of performing the third function.

According to various embodiments, the display operation may includechanging the first function-related window to a window having a presetsize in response the occurrence of an event, and displaying the thirdfunction-related window of which the display type is different,depending on the sizes of empty areas generated by the change of thefirst function-related window.

According to various embodiments, the method may further includereceiving the event, and adjusting the size of the secondfunction-related window having a changed display type in response to thereception of the event.

According to various embodiments, the method may further includereceiving the event, and again changing the display type of the firstfunction-related window or the second function-related window inresponse to the reception of the event.

FIG. 11 illustrates an example screen interface related to a new windowdisplay for a method of operating multiple windows according to anembodiment.

Referring to FIG. 11, the control module 160 of the electronic device100 may display, on the display module 140, multiple windows provided asa result of performing a plurality of functions. For example, thedisplay module 140 may display a window 1110 provided as a result ofperforming a first function and a window 1120 provided as a result ofperforming a second function as shown on a screen 1101. The windows 1110and the window 1120 may be displayed on the entire screen of the displaymodule 140, each window occupying a certain area.

The control module 160 may receive an event for adjusting the displayformat of the window 1120. For example, a user may create a drag eventby using an electronic pen or his/her fingers to adjust the display formof the window 1120. The control module 160 may adjust the display formof the window 1120 in response to the event. For example, the controlmodule 160 may adjust the size of the window 1120 in response to a dragevent, and display a size adjusting window 1121 as shown on a screen1103. Here, the control module 160 may display a new function relatedwindow 1130 on empty areas generated due to the display of the sizeadjusting window 1121.

According to an embodiment, the new function related window 1130 may bea window having another function that is arranged on a background areaof the window 1121 or may be at least some areas of the backgroundscreen. The window 1121 may be layered and displayed on the backgroundscreen or a window having a different function. If the size of thewindow 1121 is adjusted and empty areas are provided, the control module160 may display, on the empty areas, at least a portion of thebackground screen or a window having a different function. In this case,the control module 160 may readjust information included in thebackground screen according to the sizes of the empty areas and displayat least a portion of the background screen on the empty areas.Alternatively, the control module 160 may display, on the empty areas,reduced information on the background screen. Alternatively, the controlmodule 160 may display, on the empty areas, some areas of a windowhaving a different function, or reduce and display the window having thedifferent function. Alternatively, the control module 160 may display,on the empty areas, a window having a different function suitable forthe empty areas. For example, if there are various windows such as anapp window, a widget window, etc., the control module 160 may execute awidget or an app suitable for the sizes of corresponding empty areas anddisplay a window provided as a result of execution.

According to another embodiment, the new function related window 1130may be a window that is provided as a result of performing a specificfunction that is previously associated with a second function. If thesize of the window 1120 is adjusted or the adjusted size is equal to orlarger than a certain level, the control module 160 may check associatedinformation stored in the storage module 150. The control module 160 maycheck a new function associated with the second function and check thesizes of empty areas. The control module 160 may execute a programsuitable for the sizes of the empty areas. The display module 140 maydisplay, on the empty areas, the new function related window 1130provided as a result of executing a program.

According to various embodiments, an event for adjusting the displayformat of the size adjusted window 1121 may occur. For example, a usermay perform a drag operation for further adjusting the size of the sizeadjusting window 1121. If an event resulting from the drag operation isreceived, the control module 160 may further adjust the display formatof the size adjusting window 1121 and display a further adjusting window1131 as shown on a screen 1105. Here, the control module 160 may executeanother program related to the second function if the display format ofthe size adjusting window 1121 is adjusted so that the size of thewindow is equal to or smaller than a certain size. The display module140 may display, on an area of the further adjusted window 1131, awindow provided as a result of executing a corresponding program.

The control module 160 may adjust at least one of the display format ordisplay type of the new function-related window 1130 in response to thefurther adjustment of the size adjusting window 1121. For example, thecontrol module 160 may expand the new function related window 1130 toempty areas generated due to the reduction of the size adjusting window1121. The display module 140 may display the expanded newfunction-related window 1130. Alternatively, if the empty areas areexpanded due to the reduction of the size adjusted window 1121, thecontrol module 160 may execute a new function-related program suitablefor the expanded empty areas. The display module 140 may display a newfunction-related window 1140 provided as a result of executing the newfunction related program as shown on a screen 1107. According to anembodiment, the control module 140 may perform a gallery function as afunction associated with the second function on screens 1103 and 1105.If the empty areas due to the size adjustment of the window 1120 areexpanded to have a size equal to or larger than a certain size, thecontrol module 160 may perform a memo function as a new function. Thedisplay module 140 may display the new function-related window 1140provided as a result of performing the memo function. The associatedinformation may include information on functions associated with aspecific function according to the sizes of empty areas.

FIG. 12 illustrates various examples of a screen interface for operationof multiple windows that may be applied to various embodiments.

Referring to FIG. 12, the display module 140 of the electronic device100 may display a plurality of windows provided as a result of anenvironment supporting multiple windows as illustrated on a screen 1201.For example, the display module 140 may display a first function-relatedwindow 1210 and a second function-related window 1220.

Here, a preset event for adjusting the display format of the window 1220may occur. For example, the control module 160 may receive a presetevent such as a multiple-touch event, a zoom-in or zoom-out event, etc.If the preset event occurs, the display module 140 may adjust thedisplay format of the window 1220 to display a size adjusting window1221, and also display a third function related window 1230 associatedwith the second function, as shown on a screen 1203. According tovarious embodiments, the control module 160 may adjust the size of thewindow 1220 according to receiving a preset event, or display a windowprovided as a result of executing another program having the same orsimilar function as the window 1220. For example, the window 1220 may bea window provided as a result of executing an app program, and the sizeadjusted window 1221 may be a window provided as a result of executing awidget program. The control module 160 may check associated informationto display the window 1230. The control module 160 may check a thirdfunction associated with the second function. The control module 160 mayperform the third function. The display module 140 may display thewindow 1230 provided as a result of performing the third function. Thecontrol module 160 may control the display module 140 so that the sizeadjusting window 1221 having a preset size and the window 1230 having apreset size are display in response to the occurrence of a preset event.

According to an embodiment, if the preset event is received on thewindow 1220 or the display module 140, the control module 160 mayperform a fourth function associated with the first function. Thecontrol module 160 may adjust the size of the window 1220 to change to apredefined size adjusting window 1221. Alternatively, the control module160 may execute a second function related program having a differentdisplay type and control the display of the size adjusting window 1221.The display module 140 may display a fourth function related window 1240on empty areas generated due to the display of the size adjusting window1221 as shown on a screen 1205.

According to various embodiments, if a preset event occurs on the window1210, the control module 160 may perform the third function associatedwith the second function. In addition, the control module 160 may adjustthe display form or display type of the window 1210 to provide emptyareas and may arrange a window having the third function on the emptyareas.

According to various embodiments, the control module 160 may adjust thedisplay format of the window 1220 if the preset event is received. Thecontrol module 160 may adjust the display format of the window 1210 inresponse to the display format adjustment of the window 1220. Thedisplay module 140 may display a window 1222 of which the size anddirection are adjusted as shown on a screen 1207. Also, the displaymodule 140 may display a window 1211 of which the size and direction areadjusted. For example, the display module 140 may change horizontal-modewindows to vertical-mode windows and display them.

As described above, for a screen display provided as a result ofperforming a multiple window function described in various exampleembodiments detailing possible arrangements between multiple windows,adding related information, automatic and adaptive change in displayformat. Thus, the various example embodiments enable easy user access toinformation for a variety or apps and widgets without requiring an inputoperation for further and repetitive display window switching oradjustment.

On the other hand, according to various embodiments, the control module160 of the above-described electronic device 100 may include buses andat least one processor. Here, the processor may include, for example, atleast one of the event collecting module 161, the function processingmodule 163, or the output processing module 165 that are described abovewith respect to the electronic device 100. Alternatively, processingmodules included in the function processing module 163 may beimplemented as at least one processor.

The buses may be circuits that connect components in electronic devicesand that deliver communication (for example, control messages) betweenthe components, and may include hardware modules such as, for example,processors, storage modules, input modules, display modules orcommunication modules.

The processor may receive commands through the buses from the componentsincluded in the electronic devices, decrypt the received commands andperform calculation or data processing according to the decryptedcommands. In this case, the processor executes at least one applicationstored in the storage module 150 and provides a service based on acorresponding application.

Also, the processor may include one or more application processors (APs)or one or more communication processors (CPs). Here, the AP or the CPmay be included in a processor or they may be included in different ICpackages respectively. Also, the AP or the CP may also be included inone IC package. The AP may execute operating system or applicationprograms to control a plurality of hardware and software componentsconnected to the AP and may perform processing and calculation onvarious data including multimedia data. Here, the AP may be implementedas a system on chip (SoC). Also, the CP may perform at least some ofmultimedia control functions. Also, the CP may use a subscriberidentification module (for example, SIM card) to identify andauthenticate terminals in a communication network. In this case, the CPmay provide a service including voice call, video call, text message orpacket data service. Also, the CP may perform the datatransmission/reception of the communication module 260. The AP or the CPmay load, on volatile memories, commands or data read from non-volatilememories connected to the AP or the CP or from at least one of othercomponents and may process the commands or data. Also the AP or the CPmay store, in non-volatile memories, data received from at least one ofother components or generated by at least one of other components. TheCP may manage a data link when communicating between other electronicdevices connected to an electronic device over a network, and perform afunction to convert a communication protocol. Further, the processor mayfurther include a graphic processing unit (GPU). On the other hand, manyvariations may be made due to the convergence trend of digital devicesand thus entire enumerations are not possible. It should be understoodthat the electronic device 100 may further include components notmentioned above, such as an acceleration sensor, a gyro sensor, a GPSmodule, a near field communication (NFC) module, a vibration motor, anaccessory, etc. Also, for the electronic device 100, specific componentsmay be removed from components above or replaced with other componentsdepending on the situation.

According to the method of operating the multiple windows and theelectronic device supporting the same that are proposed in variousembodiments as described above, various embodiments simplifymanipulating the multiple windows.

In addition, embodiments of the present disclosure disclosed in thespecification and the drawings merely present specific examples toeasily describe the technical details of the present disclosure and helpto understand the present disclosure, and are not intended to limit thepresent disclosure. Thus, it should be construed that all changes ormodified forms that may be derived from the technical aspects of thepresent disclosure in addition to the disclosed embodiments are includedin the present disclosure.

The above-described embodiments of the present disclosure can beimplemented in hardware, firmware or via the execution of software orcomputer code that can be stored in a recording medium such as a CD ROM,a Digital Versatile Disc (DVD), a magnetic tape, a RAM, a floppy disk, ahard disk, or a magneto-optical disk or computer code downloaded over anetwork originally stored on a remote recording medium or anon-transitory machine readable medium and to be stored on a localrecording medium, so that the methods described herein can be renderedvia such software that is stored on the recording medium using a generalpurpose computer, or a special processor or in programmable or dedicatedhardware, such as an ASIC or FPGA. As would be understood in the art,the computer, the processor, microprocessor controller or theprogrammable hardware include memory components, e.g., RAM, ROM, Flash,etc. that may store or receive software or computer code that whenaccessed and executed by the computer, processor or hardware implementthe processing methods described herein. In addition, it would berecognized that when a general purpose computer accesses code forimplementing the processing shown herein, the execution of the codetransforms the general purpose computer into a special purpose computerfor executing the processing shown herein.

Any of the functions and steps provided in the Figures may beimplemented in hardware, software or a combination of both and may beperformed in whole or in part within the programmed instructions of acomputer. No claim element herein is to be construed under theprovisions of 35 U.S.C. 112, sixth paragraph, unless the element isexpressly recited using the phrase “means for”.

The functions and process steps herein may be performed automatically orwholly or partially in response to user command. An activity (includinga step) performed automatically is performed in response to executableinstruction or device operation without user direct initiation of theactivity.

The terms “unit” or “module” referred to herein is to be understood ascomprising hardware such as a processor or microprocessor configured fora certain desired functionality, or a non-transitory medium comprisingmachine executable code, in accordance with statutory subject matterunder 35 U.S.C. §101 and does not constitute software per se.

What is claimed is:
 1. An electronic device comprising: a touchscreen configured to display a multiple windows; and a processor configured to: display at least a first application in a first window and a second application in a second window on the touchscreen, detect a touchscreen input via the touchscreen, and change the second window according to the touchscreen input.
 2. The electronic device according to claim 1, wherein the touchscreen input is a drag gesture that resizes the first window.
 3. The electronic device according to claim 1, wherein the second window is changed from the second application to a widget having a same function as the second application.
 4. The electronic device according to claim 3, wherein the touchscreen input is at least one of a resizing input and a gesture input.
 5. The electronic device according to claim 2, wherein the second window is changed when: the first window is resized to a predetermined size, the first window is resized past the predetermined size, or the first window is resized for a predetermined length of time.
 6. The electronic device according to claim 2, wherein the second window is changed to display an altered graphical user interface of the second application.
 7. The electronic device according to claim 2, wherein the first window is changed to a full-screen configuration, and the second window is changed to a pop-up window displayed over at least a part of the first window.
 8. The electronic device according to claim 3, wherein the processor is further configured to deliver state information of the second application to the widget so that a function of the second application is continued without interruption.
 9. The electronic device according to claim 8, wherein the processor is further configured to: detect a second touchscreen input; change the second window from the widget to the second application and deliver state information of the widget to the second application, so that a function of the widget is continued without interruption.
 10. An electronic device comprising: a touchscreen configured to display a multiple windows; and a processor configured to: display on the touchscreen at least a first application in a first window and a second application in a second window on the touchscreen, in response to a touchscreen input, resize the second window to accommodate display of a third application in a third window.
 11. The electronic device according to claim 10, wherein the touchscreen input is a drag operation enlarging the third window from a minimized position proximate to an edge of the second window, and reducing a size of the second window.
 12. The electronic device according to claim 10, wherein: a touchscreen area displaying the second window is split into a first partition and a second partition, and the second window is displayed in the first partition and the third window is displayed in the second partition.
 13. The electronic device according to claim 10, the processor further configured to: detect via an accelerometer that the electronic device has changed orientation; and change arrangement of the first window, second window and third window while maintaining the same ratio of touchscreen area allocated to the first window, second window and third window before the orientation was changed.
 14. A method of operating multiple windows, comprising: displaying on a touchscreen at least a first application in a first window and a second application in a second window according to a multi-window mode; and detecting a touchscreen input via the touchscreen and changing the second window according to the touchscreen input via a processor.
 15. The method of claim 14, wherein the touchscreen input is a drag gesture that resizes the first window.
 16. The method of claim 14, wherein the second window is changed from the second application to a widget having a same function as the second application.
 17. The method of claim 14, wherein the second window is changed when: the first window is resized to a predetermined size, the first window is resized past the predetermined size, or the first window is resized for a predetermined length of time.
 18. A method of operating multiple windows, comprising: displaying on a touchscreen at least a first application in a first window and a second application in a second window according to a multi-window mode; and in response to detecting a touchscreen input from the touchscreen, resizing the second window to accommodate display of a third application in a third window.
 19. The method of claim 18, wherein the touchscreen input is a drag operation enlarging the third window from a minimized position proximate to an edge of the second window, and reducing the second window.
 20. The method of claim 18, further comprising: splitting an area of the touchscreen occupied by the second window into a first partition and second partition; and displaying the second window in the first partition, and displaying the third window in the second partition. 